A film scanner that reads a transparent original such as film as by a one-dimensional image sensor is known in the art. More recently, a film scanner having a so-called dust and scratch eliminating function has been developed. This film scanner detects dust and scratches on film by an infrared-read operation in addition to the reading of the actual image based upon visible light and corrects the actual-image information by image processing to thereby furnish an image that is free of dust and scratches.
In the actual-image correction that removes dust and scratches, deficient pixels are corrected for by interpolation processing using normal pixels surrounding a pixel that corresponds to the flawed portion (such a pixel shall be referred to as a deficient pixel). In such interpolation processing, a technique often used is to determine whether the colors of the surrounding normal pixels used in interpolation are colors close to each other. That is, in a case where a first normal pixel (R1, G1, B1) and a second normal pixel (R2, G2, B2) peripheral to a deficient pixel are used in interpolation processing, it is judged whether the color difference between the first and second normal pixels falls within a predetermined allowable range.
A first method of performing this determination is to calculate a difference D between the first and second normal pixels in RGB color space and comparing the value of D with a predetermined threshold value (e.g., THRGB). If D<THRGB holds in this case, it is judged that the two pixels have colors that are close to each other. Here the distance D is calculated using the following equation:D=[(R1−R2)2+(G1−G2)2+(B1−B2)2]1/2 
A second method that differs from the first method also is available. According to the second method, it is assumed that the RGB values of actual-image data output from a film scanner are in conformity with sRGB color space, which is the standard RGB color space. The RGB values of the first and second normal pixels are converted to data in CIELab color space, which is uniform color space, and a color difference ΔE*ab between these two colors is compared with a predetermined threshold value THLab. In this method also it is judged that the two pixels are colors that are close to each other in a case where the color difference between the two colors satisfies the relation ΔE*ab<THLab.
The conversion from SRGB color space to CIELab color space and the method of calculating the color difference ΔE*ab will now be described. The RGB data is assumed to be 8-bit data. First, a conversion from sRGB color space to XYZ color space is performed using the following equations:R′sRGB=R8bit/255.0;G′sRGB=G8bit/255.0;B′sRGB=B8bit/255.0;
when R′sRGB, G′sRGB, B′sRGB≦0.04045 holds,RsRGB=R′sRGB/12.92;GsRGB=G′sRGB/12.92;BsRGB=B′sRGB/12.92; and
when R′sRGB, G′sRGB, B′sRGB>0.04045 holds,RsRGB=[(R′sRGB+0.055)/1.055]2.4 GsRGB=[(G′sRGB+0.055)/1.055]2.4 BsRGB=[(B′sRGB+0.055)/1.055]2.4 
      [                                        X            ⁢                                                                                      Y                                      Z                      ]    =      [                            0.4124                          0.3576                          0.1805                                      0.2126                          0.7152                          0.0722                                      0.0193                          0.1192                          0.9505                      ]  
Next, a conversion from XYZ color space to CIELab color space is performed using the following equations:L*=116(Y/Yn)1/3−16 when Y/Yn>0.008856 holds,L*=903.29(Y/Yn)1/3 when Y/Yn≦0.008856 holds;
Y: Y value of tristimulus values in the XYZ colorimetric system,
Yn: Y value based upon a standard illuminant of a perfect diffuse reflection surface;a*=500[f(X/Xn)−f(Y/Yn)]b*=200[f(Y/Yn)−f(Z/Zn)]where f(X/Xn)=(X/Xn)1/3 when X/Xn>0.008856 holds;
f(X/Xn)=7.78(X/Xn)+16/116 when X/Xn≦0.008856 holds;
f(Y/Yn)=(Y/Yn)1/3 when Y/Yn>0.008856 holds;
f(Y/Yn)=7.78(Y/Yn)+16/116 when Y/Yn≦0.008856 holds;
f(Z/Zn)=(Z/Zn)1/3 when Z/Zn>0.008856 holds;
f(Z/Zn)=7.78(Z/Zn)+16/116 when Z/Zn≦0.008856 holds; and
X, Y, Z: values of tristimulus values in the XYZ colorimetric system, and
Xn, Yn, Zn: values of X, Y, Z based upon a standard illuminant of a perfect diffuse reflection surface.
Calculation of the color difference ΔE*ab in CIELab color space is performed using the following equation:ΔE*ab=[(ΔL*)2+(Δa*)2+(Δb*)2]1/2 
where the following holds:ΔL*=L2*−L1*Δa*=a2*−a1*Δb*=b2*−b1*
However, the above-described methods of judging color difference according to the prior art involve certain problems. Specifically, with the first method of judging color difference based upon the distance D in RGB color space between the colors of two normal pixels, RGB color space itself is not uniform with respect to the sense of vision in humans and, hence, there is no correlation to this human sense. For example, if the distance D in a dark area and the distance D in a bright area are compared, human vision is such that a disparity in color is easier to perceive in a dark area than in a bright area even though the distance D between two colors in RGB color space is the same.
Further, with the second method of converting RGB data to data in CIELab color space, which is uniform color space, and judging color difference based upon the calculated color difference ΔE*ab, the fact that the comparison is made in uniform color space means that there is some correlation to the human vision. However, since the calculation load for the conversion from RGB to L*a*b* is large, processing takes time and a problem arises in a case where processing must be executed in real time, as when processing for eliminating dust and scratches is executed.